package com.yuedao.sender.model1;

import javax.persistence.*;
import java.util.Objects;

@Entity(name = "ydx_clear_details")
public class ClearDetailsEntity {

     private Integer id;

     private Integer userId;

     private String transactionTime;

     private Double payAmount;

     private Integer payMethod;

     private String paymentYm;

     private String  transactionId;

     private Integer cashiser;

     private String payMemo;

     private String notes;

     //追加字段
    private String  payOrderNo;
    private String  payInfo;
    private Integer payStatus;
    private Integer withdrawId;


    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id", nullable = false)
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Basic
    @Column(name = "user_id", nullable = false)
    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    @Basic
    @Column(name = "transaction_time", nullable = false)
    public String getTransactionTime() {
        return transactionTime;
    }

    public void setTransactionTime(String transactionTime) {
        this.transactionTime = transactionTime;
    }

    @Basic
    @Column(name = "pay_amount", nullable = false)
    public Double getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(Double payAmount) {
        this.payAmount = payAmount;
    }

    @Basic
    @Column(name = "pay_method", nullable = false)
    public Integer getPayMethod() {
        return payMethod;
    }

    public void setPayMethod(Integer payMethod) {
        this.payMethod = payMethod;
    }

    @Basic
    @Column(name = "payment_ym", nullable = false)
    public String getPaymentYm() {
        return paymentYm;
    }

    public void setPaymentYm(String paymentYm) {
        this.paymentYm = paymentYm;
    }

    @Basic
    @Column(name = "transaction_id", nullable = false)
    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    @Basic
    @Column(name = "cashier", nullable = false)
    public Integer getCashiser() {
        return cashiser;
    }

    public void setCashiser(Integer cashiser) {
        this.cashiser = cashiser;
    }

    @Basic
    @Column(name = "Pay_memo", nullable = false)
    public String getPayMemo() {
        return payMemo;
    }

    public void setPayMemo(String payMemo) {
        this.payMemo = payMemo;
    }

    @Basic
    @Column(name = "notes", nullable = false)
    public String getNotes() {
        return notes;
    }

    public void setNotes(String notes) {
        this.notes = notes;
    }


    @Basic
    @Column(name = "pay_order_no", nullable = false)
    public String getPayOrderNo() {
        return payOrderNo;
    }

    public void setPayOrderNo(String payOrderNo) {
        this.payOrderNo = payOrderNo;
    }

    @Basic
    @Column(name = "pay_info", nullable = false)
    public String getPayInfo() {
        return payInfo;
    }

    public void setPayInfo(String payInfo) {
        this.payInfo = payInfo;
    }


    @Basic
    @Column(name = "pay_status", nullable = false)
    public Integer getPayStatus() {
        return payStatus;
    }

    public void setPayStatus(Integer payStatus) {
        this.payStatus = payStatus;
    }




    @Basic
    @Column(name = "withdraw_id", nullable = false)
    public Integer getWithdrawId() {
        return withdrawId;
    }


    public void setWithdrawId(Integer withdrawId) {
        this.withdrawId = withdrawId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        ClearDetailsEntity that = (ClearDetailsEntity) o;
        return Objects.equals(id, that.id) &&
                Objects.equals(transactionTime, that.transactionTime) &&
                Objects.equals(payAmount, that.payAmount) &&
                Objects.equals(payMethod, that.payMethod) &&
                Objects.equals(paymentYm, that.paymentYm) &&
                Objects.equals(transactionId, that.transactionId) &&
                Objects.equals(cashiser, that.cashiser) &&
                Objects.equals(payMemo, that.payMemo) &&
                Objects.equals(notes, that.notes);
    }

    @Override
    public int hashCode() {

        return Objects.hash(id, transactionTime, payAmount, payMethod, paymentYm, transactionId, cashiser, payMemo, notes);
    }
}
